/* test plan */
{
	/* description of the test plan */
	"description": "This is a simple upgrade scenario",

	/* steps */
	"steps": [

		/* allocate slaves */
		{
			"action": "salloc",
			"args": [{
					"type": "LINUX",
					"number": 2,
					"reference": "HDB_SLAVE_1,HDB_SLAVE_2"
				}, {
					"type": "WIN32",
					"number": 1,
					"reference": "WIN32_SLAVE"
				}]
		},

		/* prepare build PL11 */
		{
			"action": "cp11",
			"args": [{
					"source": "PL11_SEPERATED_PACKAGE",
					"reference": "PACKAGE_PATH_PL11"
				}]
		},

		/* prepare build PL13 */
		{
			"action": "cpb1",
			"args": [{
					"branch": "9.01_DEV",
					"source": "latest",
					"reference": "PACKAGE_PATH_PL13"
				}]
		},

		/* prepare build PL02 */
		{
			"action": "cpb1",
			"args": [{
					"branch": "9.1_DEV",
					"source": "latest",
					"reference": "PACKAGE_PATH_PL02"
				}]
		},

		/* prepare build HDB74 */
		{
			"action": "cphdb",
			"args": [{
					"source": "HANA_74",
					"reference": "PACKAGE_PATH_HDB74"
				}]
		},

		/* cleanup all test slaves */
		{
			"action": "cls",
			"parallel": true,
			"args": [{
					"node": "HDB_SLAVE_1",
					"type": "all"
				}, {
					"node": "HDB_SLAVE_2",
					"type": "all"
				}]
		},

		/* install HANA */
		{
			"action": "hdb74",
			"parallel": true,
			"args": [{
					"node": "HDB_SLAVE_1",
					"build": "PACKAGE_PATH_HDB74",
					"server": true,
					"client_x86": true,
					"client_x64": true
				}, {
					"node": "HDB_SLAVE_2",
					"build": "PACKAGE_PATH_HDB74",
					"server": true,
					"client_x86": true,
					"client_x64": true
				}],
			"pre_event": [{
					"node": "HDB_SLAVE_1",
					"action": "lib_echo.groovy"
				}, {
					"node": "HDB_SLAVE_2",
					"action": "lib_echo.groovy"
				}],
			"post_event": [{
					"node": "HDB_SLAVE_1",
					"action": "lib_echo.groovy"
				}]
		},

		/* install PL11 */
		{
			"action": "setup11",
			"args": [{
					"node": "HDB_SLAVE_1",
					"build": "PACKAGE_PATH_PL11",
					"type": "SLD"
				}, {
					"node": "HDB_SLAVE_2",
					"build": "PACKAGE_PATH_PL11",
					"type": "SXA"
				}]
		},

		/* upgrade to PL13 */
		{
			"action": "setup",
			"args": [{
					"node": "HDB_SLAVE_1",
					"build": "PACKAGE_PATH_PL13",
					"properties": "UPGRADE_PL13_SLD.properties"
				}, {
					"node": "HDB_SLAVE_2",
					"build": "PACKAGE_PATH_PL13",
					"properties": "UPGRADE_PL13_SXA.properties"
				}]
		},

		/* initialize company */
		{
			"action": "jmx",
			"args": [ "INIT_COMPANY.jmx" ]
		},

		/* upgrade to PL02 */
		{
			"action": "setup",
			"args": [{
					"node": "HDB_SLAVE_1",
					"build": "PACKAGE_PATH_PL02",
					"properties": "UPGRADE_PL02_SLD.properties"
				}, {
					"node": "HDB_SLAVE_2",
					"build": "PACKAGE_PATH_PL02",
					"properties": "UPGRADE_PL02_SXA.properties"
				}]
		},

		/* upgrade company */
		{
			"action": "jmx",
			"args": [ "UPDATE_COMPANY.jmx" ]
		},

		/* free slaves */
		{
			"action": "sfree",
			"suppress": false,
			"args": [ "HDB_SLAVE_1", "HDB_SLAVE_2", "WIN32_SLAVE" ]
		},
	]
}